#include <stdio.h>
#define N 10

void fun(int *p) {
    int i, t;
    int max = 0;
    int min = 0;
    
    // 找到最大和最小元素的下标
    for (i = 0; i < N; i++) {
        if (*(p + i) < *(p + min))
            min = i;
        if (*(p + i) > *(p + max))
            max = i;
    }
    
    // 交换最大和最小元素
    t = *(p + max);
    *(p + max) = *(p + min);
    *(p + min) = t;
}

int main() {
    int i;
    int aa[N] = {44, 55, 62, 42, 35, 52, 78, 95, 66, 73};

    printf("\n***original list***\n");
    for (i = 0; i < N; i++)
        printf("%4d", aa[i]);

    fun(aa); // 调用fun函数交换最大和最小元素的位置

    printf("\n***new list***\n");
    for (i = 0; i < N; i++) {
        printf("%4d", aa[i]);
    }

    return 0;
}
